de Bruijnインデックス
λ計算において(あるいはもっと広く)束縛変数があるような式についての記述で,名前無しで束縛変数を表すための記法 参考文献
解説
直感的には,相対的にその変数を束縛しているλの距離を表していると考えることが出来る.
例
$ \lambda \chi.(x(\lambda \alpha.\lambda \beta.((\beta \alpha) (\lambda \gamma.\chi \gamma))))
$ \gammaに着目すると,$ \gammaを束縛している$ λは$ \gammaから見ると距離1の位置にある.
$ \chiに着目すると,$ \chiを束縛している$ λは$ \chiから見ると距離4の位置にある.
$ \lambda \chi.に到着するまで$ \lambdaを3回スルーする.
$ \betaに着目すると,$ \betaを束縛している$ \lambdaは$ \betaから観て距離1である.
$ \alphaに着目すると,$ \alphaを束縛している$ \lambdaは$ \alphaから観て距離2である.
$ \lambda \alpha.に到着するまで$ \alphaを1回スルーする.
$ \lambda (x(\lambda\lambda((12)(\lambda41))))
利点
束縛変数の名前という概念が無くなる.すなわち,$ \lambda \alpha.\alphaと$ \lambda \beta.\betaは$ \lambda 1という形に帰着するので同じ形であると言える.